This invention relates to systems employing SCSI buses, and, more particularly, to systems with multiple resources, such as data storage libraries, interconnected with SCSI buses.
The typical SCSI (Small Computer Systems Interface) system having multiple resources, such as a data storage library, relies on the attached host to track each of the data storage media stored on storage shelves in the library. The host may utilize the volume serial number (VOLSER) to track each of the data storage media, together with a table indicating the storage shelves on which the media is stored; or may keep track of all of the media by tracking all of the storage shelves on which they are stored, and not use the VOLSER. The host accesses a data storage media by issuing a SCSI access command to the library ordering an autochanger to move to the location of the storage shelf storing the media and access the media, and then to move the media to a selected drive and place the media so that it may be loaded by the drive. If the library has a plurality of data storage drives, the host also tracks which drive is busy and determines which data storage media will be accessed by the autochanger and select the drive for receiving the media. If two hosts are involved, the hosts can communicate with each other to allocate the required media and drives. The library controller will queue input commands, issuing xe2x80x9cbusyxe2x80x9d signals for resources that are in use by another host.
Thus, the hosts require significant time and computing power to work together to operate the data storage system. Additionally, without a high level dynamic allocation system in the hosts, the hosts must parse the drives between themselves so that there is no risk that the same drive will be utilized by more than one host at the same time, leading to inefficiencies in utilization of the data storage system.
Further, the number of hosts that can be attached to the library are limited by the number of data storage drives and by the number of addresses available on the SCSI bus, the addresses normally totaling eight or sixteen.
Still further, a storage system such as a data storage library requires precise interaction between the autochanger and the drives in order to maximize performance. Thus, since the host is not arranged to handle such precise interaction, the data storage drives in a SCSI system are costly, having specialized hard wired connections between the drives and the autochangers to insure that the drive is available, e.g., to receive a data storage media when the autochanger delivers the media. Less costly xe2x80x9coff-the-shelfxe2x80x9d drives can be used, but results in lower performance.
It is an object of the present invention to provide a SCSI system, such as a SCSI data storage library, that utilizes multiple resources, such as data storage drives and at least one autochanger, without requiring specialized hard wired communications between the resources to improve library performance, such as cartridge throughput and improving library utilization, without unduly burdening the attached hosts.
Disclosed are an intelligent bus listening device, and a method which may be implemented as a computer program product, for listening to SCSI commands on a first SCSI bus and providing commands on a second bus, for a system having multiple resources, such as a data storage library.
A connection of the intelligent bus listening device is provided to the first SCSI bus for listening to the first SCSI bus; a second bus interface coupled to the second bus for communicating commands onto the second bus; and a processor coupled to the connection and to the second bus interface, the processor listening to first commands on the first SCSI bus; converting the first commands to second commands related to the first commands; and providing the second commands to the second bus interface.
An embodiment is provided for a data storage library that accesses data stored in data storage media in response to access and drive commands from at least one host. The library comprises at least one data storage drive for reading and/or writing data on the data storage media in response to received drive commands, a plurality of storage shelves for storing the data storage media, an autochanger for accessing and moving the data storage media amongst the data storage shelves and the at least one data storage drive in response to received access commands, a first SCSI bus coupled to the drives, the bus receiving the access and drive commands from the hosts, a second bus coupled to the autochanger, and an intelligent bus listening device. The intelligent bus listening device is arranged to listen to the first SCSI bus, listening to commands from the hosts. The intelligent bus listening device is coupled to the second bus, and converts the access commands from the hosts to movement commands, and supplies the movement commands to the second bus for the autochanger.
Access commands may comprise SCSI media mover commands or high level media access commands.
The intelligent bus listening device additionally is coupled to the first SCSI bus and is arranged to provide status response signals on the first SCSI bus to the host in response to the access commands.
If the library has a plurality of autochangers, the intelligent bus listening device additionally allocates the converted access commands among the autochangers.
For a fuller understanding of the present invention, reference should be made to the following detailed description taken in conjunction with the accompanying drawings.